/**
 * 防抖函数
 * @param {*} fn 执行函数
 * @param {*} wait 等待时长
 * @returns 新函数
 */
export const debounce = (fn, wait) => {
  let timeout = null;
  return (...args) => {
    if (timeout) clearTimeout(timeout);
    timeout = setTimeout(() => {
      // 清除定时器后，执行函数
      fn(...args);
      timeout = null;
    }, wait);
  }
}
